Clauser: Clause Slicing Tool for C Programs
نویسندگان
چکیده
The Clause slicing technique is a static slicing technique. The clause slice criterion is the clause, which is the smallest part of the code line, with the clause number. In this paper, we introduce the “Clauser,” which is a new clause slicing tool for C programs. The Clauser is a slicing tool that divides the program code lines into clauses, depending on certain rules, and then it slices the clauses by applying the rules of clause slicing and returns the slices of the slice criterion. Compared to other static slicing techniques, clause slicing is more accurate because it considers all code phrases that may affect the program flow. Implementation results showed that the Clauser succeeded in automating a part of clause slicing.
منابع مشابه
Learning of Constraint Logic Programs by Combining Unfolding and Slicing Techniques
This paper discusses learning of Constraint Logic Programs using unfolding and slicing technique. The transformation rule for unfolding together with clause removal is a method for specialization of Logic Programs. Slicing is a program analysis technique originally developed for imperative languages. It facilitates the understanding of data flow and debugging. This paper formulates the semantic...
متن کاملAn Overview of the Indus Framework for Analysis and Slicing of Concurrent Java Software
Program slicing is a program analysis and transformation technique that has been successfully applied in a wide range of applications including program comprehension, debugging, maintenance, testing, and verification. However, there are only a few full-featured implementations of program slicing that are available for industrial applications or academic research. In particular, very little tool...
متن کاملSlicing Multi-threaded Java Programs : A Case Study
Program slicing is becoming increasingly popular as an initial step in the construction of finite-state models for automated verification. As part of a project aimed at building tools to automate the extraction of compact, sound finitestate models of concurrent Java programs, we have developed the theoretical foundations of slicing threaded programs that use Java monitors and wait/notify synchr...
متن کاملNew Algorithm for Slicing Unstructured Pro - grams
SUMMARY Program slicing is an automatic program abstraction technique whose many applications include software maintenance, re{engineering and comprehension, all of which rely crucially upon the precision of the slicing algorithm used. When slicing is applied to maintenance problems, the programs to be sliced are typically legacy systems, often written in older, `unstructured' programming style...
متن کاملBetter Slicing of Programs with Jumps and Switches
Program slicing is an important operation that can be used as the basis for programming tools that help programmers understand, debug, maintain, and test their code. This paper extends previous work on program slicing by providing a new definition of “correct” slices, by introducing a representation for C-style switch statements, and by defining a new way to compute control dependences and to s...
متن کامل